1. Field of the Invention
The present invention relates to a protocol sensor which automatically determines which of several different protocols is active on a computerized local area network, and which also determines which of several different frame packet types is being used by that protocol.
2. Incorporation by Reference
U.S. patent application Ser. No. 07/978,369, entitled "Method And Apparatus For Interfacing A Peripheral To A Local Area Network", is hereby incorporated by reference.
3. Description of the Related Art
Computerized local and wide area networks are now commonly used for providing communication between different computers and computer peripherals which are connected to the network. Communication on the network is carried out under control of network software which is now available from several different software manufacturers. Each of those manufacturers has defined a different protocol for network communication. Thus, Novell has defined an IPX/SPX (internetwork packet exchange/sequential packet exchange) protocol, UNIX operating systems have defined a TCP/IP (transmission control protocol/internet protocol) protocol, Apple has defined an Ethertalk protocol, and other manufacturers have defined other network protocols.
Each of the protocols defines how network communications are to be carried out, and how the network devices operating under that protocol communicate with each other. For example, protocol defines how a network device broadcasts requests for network services on the network, how it responds to requests for network services, and how it may be configured. Each of the protocols is incompatible with the other protocols.
Network communications are carried on the physical network wire in packets which are commonly referred to as "frames". Several different frame types have been defined, and are in common use, and each frame type specifies the organization of network data in a frame, such as the length of the frame packet, error codes for the frame packet, location of source and destination sockets, and the like. Examples of frame types in an Ethernet network are 802.2, Ethernet.sub.-- II, Ethernet.sub.-- Snap, and 802.3.
Accordingly, to communicate on a network, it is necessary to know both the protocol in use by the network software and the frame packet type with which network communications are carried on the physical network wire.
As sophistication of computerized networks has grown, it is also common to encounter networks on which two or more different protocols are being run, each with its own frame packet type. For example, it is common to encounter a network on which both a Novell IPX/SPX protocol is being run using, for example, an 802.2 frame type, as well as a UNIX TCP/IP protocol using, for example, an Ethernet.sub.-- II frame packet type. Modern network devices must therefore be able to communicate effectively on multi-protocol networks.
This multi-protocol requirement has given rise to the following problem. Each of the different protocols ordinarily involves some sort of network broadcast by which the network device advises all devices connected to the network that it is connected to the network. For example, a Novell IPX/SPX protocol involves SAP (service advertising packages) broadcasts by which the network device advertises the availability of its services. Similarly, a UNIX TCP/IP protocol involves a RARP (reverse address resolution protocol) broadcast by which the TCP/IP device broadcasts a request for a network address. One way that has been considered to determine whether a particular protocol is active on the network is to make a broadcast request and see if any device responds. However, broadcasting on a network that is not prepared to respond to such broadcasts may cause network difficulties. In extreme cases, broadcasting in an unexpected protocol may ultimately cause a non-robust network to malfunction.